import java.io.*;
import java.util.*;
import java.math.*;

public class Main {
	/**
	 * @author Tang Qiao
	 */
	static boolean debug=false;
	public static void main(String[] args) throws Exception{
		// TODO init
		Scanner in = new Scanner(System.in);
		BigInteger a;
		int c, ppoint, dlen, i, j;
		String s1, s2;
		Integer times;
		StringBuffer sb;
		while (in.hasNext())
		{
			// init
			s1 = in.next();
			c  = in.nextInt();
			// find the '.'
			ppoint = -1;
			for (i=0; i<s1.length(); ++i)
				if (s1.charAt(i)=='.')
				{
					ppoint = i;
					break;
				}
			// erase the '.'
			sb = new StringBuffer(s1);
			if (ppoint != -1)
				sb.deleteCharAt(ppoint);
			// get the '.' length
			if (ppoint == -1) ppoint = s1.length()-1;
			dlen = s1.length()-1-ppoint;
			dlen = dlen*c;
			if (debug)
				System.out.println("The dlen="+dlen);
			// get the pos value
			a = new BigInteger(sb.toString());
			a = a.pow(c);
			// get the result
			s2 = a.toString();
			sb = new StringBuffer("");
			boolean first0=true;
			for (i=s2.length()-1, j=1; i>=0; --i,++j)
			{	
				if (j<=dlen) 
				{
					if (s2.charAt(i)!='0') first0 = false;
					if (!(s2.charAt(i)=='0' && first0))  
						sb.append(s2.charAt(i));
					if (j==dlen) sb.append('.');
				}
				else
				{
					sb.append(s2.charAt(i));
				}
			}
			while (j<=dlen)
			{
				sb.append('0');
				if (j==dlen) sb.append('.');
				++j;
			}
			sb = sb.reverse();
			j = sb.length()-1;
			if (sb.charAt(j)=='.') sb.deleteCharAt(j);
			System.out.println(sb.toString());
			
		}
		 	
	}

}
